package cn.yuanqiao.archive.appManager.service;

import cn.yuanqiao.archive.appManager.domain.TenantCodeList;
import cn.yuanqiao.archive.appManager.domain.TenantMdataList;
import com.alibaba.fastjson2.JSONObject;

import java.util.List;
import java.util.Map;

/**
 * codelistService接口
 * 
 * @author yuanqiao
 * @date 2023-06-15
 */
public interface ITenantCodelistService
{
    /**
     * 查询codelist
     * 
     * @param Id codelist主键
     * @return codelist
     */
    public TenantCodeList selectYqdaCodelistModelById(Long Id);

    /**
     * 查询codelist列表
     * 
     * @param yqdaCodelistModel codelist
     * @return codelist集合
     */
    public List<TenantCodeList> selectYqdaCodelistModelList(TenantCodeList yqdaCodelistModel);

    /**
     * 新增codelist
     * 
     * @param json codelist
     * @return 结果
     */
    public int insertYqdaCodelistModel(JSONObject json);


    /**
     * 修改codelist
     * 
     * @param json codelist
     * @return 结果
     */
    public int updateYqdaCodelistModel(JSONObject json);

    public String dhOfCheckForDefects(JSONObject json);

    List<Map<String, Object>> getNameByColumn(String fieldName,Long categoryId,String type);
    /**
     * 批量删除codelist
     * 
     * @param Ids 需要删除的codelist主键集合
     * @return 结果
     */
    public int deleteYqdaCodelistModelByIds(Long[] Ids);

    /**
     * 删除codelist信息
     * 
     * @param Id codelist主键
     * @return 结果
     */
    public int deleteYqdaCodelistModelById(Long Id);

    JSONObject getdetail(String type, Long archivalcodeRuleId);

    public List<TenantMdataList> getjiancunchuziduan(String categoryId);

    public List<TenantMdataList> getcodecolumnname(String categoryId,Integer type);

    public List<TenantMdataList> getjianziduanselect(String categoryId);

    public List<TenantMdataList> getselect(String categoryId,Integer type);

    public List<TenantMdataList> getpaixuselect(String categoryId,Integer type);

    public List<Map<String,Object>> getorderright(Long id, String type);

    public List<TenantMdataList> getorderleft(Long id,String categoryId,Integer type);
}
